﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using BLL.Concrete;

namespace BackOffice.Controllers
{
    [HandleError]
    [Authorize(Roles = "Administrator")]
    public class GaleriaHomeController : Controller
    {
        //
        // GET: /GaleriaHome/
        HomeGaleriaBll homeBll;
        public GaleriaHomeController()
        {
            homeBll = new HomeGaleriaBll();
        }

        public ActionResult Index()
        {
            var galeria = homeBll.GetGaleria().ToList();
            ViewData.Model = galeria;
            return View();
        }

        public ActionResult PartialMenu()
        {
            return PartialView();
        }

        [HttpPost]
        public ActionResult InsertImage(int orden, HttpPostedFileBase imagen)
        {
            homeBll.InsertImage(orden, imagen);
            return RedirectToAction("Index");
        }

        [HttpPost]
        public ActionResult DeleteImagen(int idImagenGaleria)
        {
            try
            {
                homeBll.DeleteImagenGaleria(idImagenGaleria);
                return Json(new { success = true, mensaje = "Imagen eliminada con éxito" });
            }
            catch
            {
                return Json(new { success = false, mensaje = "La imagen pudo ser eliminada" });
            }
        }

        [HttpPost]
        public ActionResult UpdateOrden(int idImagenGaleria, int orden)
        {
            try
            {
                homeBll.updateOrden(idImagenGaleria, orden);
                return Json(new { success = true, mensaje = "Imagen actualizada con exito" });
            }
            catch
            {
                return Json(new { success = false, mensaje = "La imagen no pudo ser actualizada" });
            }
        }
    }
}
